Reduced digital audio sampling rates in digital audio processing chain

ABSTRACT

Reduced digital audio sampling rates are described in a digital audio processing chain. In one embodiment, an audio signal is received. A convolution operation is performed on the received audio signal. The convoluted audio signal is sampled. An interrupt is received to process the audio sample, and the sample is processed in response to the interrupt. The processed samples are collected to form a frame and the frame is transmitted to a remote device.

FIELD

The present disclosure relates to analog to digital converters and inparticular to reducing the sampling rate in a digital audio processingchain.

BACKGROUND

Mobile devices frequently offer voice or audio communication systems sothat users can communicate through a network with other users. Cellulartelephones may offer voice communication using a cellular telephonenetwork or the Internet. Other devices may use other networks to sendand receive voice to remote devices. These systems use digitalcommunication networks so that a downlink chain receives digital speechfrom the network, converts it to analog, and plays it through a speaker.An uplink chain receives speech through microphones, converts it todigital speech using an analog to digital converter (ADC) and sends thedigital speech to the network. The digital speech from the ADC is in theform of discrete samples which are processed as samples and thenpacketized by being accumulated and attached to a packet header to besent on the network. The same system is also used in some systems foraudio and video recordings that are stored at the device.

The ADC in the uplink chain samples the speech to produce the digitalspeech. The sample rate and the number of bits per sample determine thequality of the digital conversion. For many systems an 8 kHz sample rateis used. If the analog audio is low pass filtered to include no audiofrequencies higher than 4 kHz, then the Nyquist criterion is satisfied.Higher fidelity speech is currently being investigated for which higheraudio frequencies are included in the digitized speech. The 4 kHz lowpass filtered speech has been referred to as Narrowband Speech and 8 kHzlow pass filtered speech is referred to as Wideband Speech, SuperWideband Speech uses a 16 kHz low pass filter. These higher frequencyanalog audio signals require higher sampling rates if the Nyquistcriterion is to be satisfied.

In typical present day mobile audio and systems, almost all audioprocessing chains are driven by interrupts, typically from an AFE (AudioFront End). For each of these interrupts, the AFE periodically extractsa sample from the ADC of the microphone and feeds the sample through theuplink speech processing chain. This is followed by extracting a samplefrom the downlink speech processing chain to a loudspeaker or otherinterface. As a result, the sampling rate requirement of the ADC isdirectly related to the interrupt rate of the AFE. A higher speed ADCrequires a higher interrupt rate at the audio scheduler. The audioscheduler schedules the various audio processing blocks in a typicalmobile audio processing pipeline. Doubling or quadrupling the samplingrate requires that more computational resources are used for processingspeech samples and frames.

Typically a real-valued speech signal being fed through a speechprocessing chain in the uplink direction should be sampled at twice itsbandwidth. This can be derived according to Nyquist's sampling theorem.For Narrowband Speech, the bandwidth of the speech signal is restrictedto 4 kHz in which case the sampling rate of the ADC is 8 kHz. Thisapplies not only to the ADC, but also to the samples supplied to the DACon the DL and to other interfaces. This provides reciprocity. ForWideband Speech, the bandwidth of speech is restricted to 8 kHz and thesampling rate of the ADC is 16 kHz. The sampling rate of the ADC or theDAC dictates the interrupt rate of the AFE.

BRIEF DESCRIPTION OF THE DRAWINGS

Embodiments are illustrated by way of example, and not by way oflimitation, in the figures of the accompanying drawings in which likereference numerals refer to similar elements.

FIG. 1 is a block diagram of an audio pipeline according to anembodiment.

FIGS. 2A to 2C are graphs of audio signals in the frequency domain indifferent stages of processing according to an embodiment.

FIG. 3 is a block diagram of a pre-envelope computation module beforeanalog to digital conversion for an uplink speech scheduler according toan embodiment.

FIGS. 4A and 4B show audio reconstruction according to an embodiment.

FIG. 5 is a process flow diagram of sampling audio in an audio pipelineaccording to an embodiment.

FIG. 6 is a process flow diagram of power management for an audiopipeline according to an embodiment.

FIG. 7 is a block diagram of a computing device incorporating audioprocessing according to an embodiment.

DETAILED DESCRIPTION

A complexity-scalable audio processing pipeline is described that isparticularly useful for mobile devices. The interrupt rate of the AFEand the ADC may be reduced as described herein. This allows for bettertask scheduling for audio and non-audio tasks that run on the computingcores of the system. The computational complexity of the speechprocessing chain can also be reduced in both uplink and downlinkdirections, while the quality of speech is unperturbed.

Using the described techniques, the system requirements to support highspeed ADCs with higher sampling rates can be relaxed. This allowssimpler lower cost system designs. High fidelity mobile speechprocessing systems like Super-Wideband (24/32 kHz sampling rates forvoice) may be accommodated at less expense because a sub-Nyquist speechsignal sampling rate at the ADC may be used.

An analog speech signal is real-valued and not complex-valued.Therefore, it may be represented as a real number with no imaginarypart. As a result, the magnitude of the Fourier transform of an analogspeech signal is an even function. It is symmetrically arranged aboutzero frequency. By applying a Hilbert Transformation to the speechsignal, the pre-envelope of the signal, which consists of only one sidelobe in the frequency domain, may be computed. By transforming thesignal into a one-sided analytic signal, the transformed signal can besampled at half of the original Nyquist rate without the sampled signalbeing affected by aliasing.

Theoretically, the full band signal can be perfectly reconstructed fromthe one-sided pre-envelope by taking advantage of the fact that theanalog speech signal is a real valued signal. The frequency content(corresponding to one-side) is not cut off by sampling only thepre-envelope and hence Parseval's theorem is not violated. Practically,the quality of the reconstruction of the analog signal is dependent onthe precision of the Hilbert Transformer. Generally, higher precision inthe transformer requires higher complexity.

In the uplink direction, a Nyquist-rate ADC may be replaced with ormodified to act as a half Nyquist rate ADC by processing thepre-envelope instead of the original signal. Using a half rate ADC, AFEinterrupts may be reconfigured to occur at half the rate, for example ateach complex sample of the pre-envelope. In the downlink direction, theAFE interrupts may be reconfigured to occur for every two real samplesinstead of for each real sample. By reducing the sampling rate, theinterrupt overhead of the audio scheduler is also reduced, makingallowance for more optimized sample-based and frame-based processing.This results in a substantial gain in the availability of thecomputational resources for other functions. As microphones and ADCs areused for higher bandwidth voice applications, such as 24/32 kHz samplingrates, higher processing power is required. The half-rate samplingdescribed herein is not half-rate streaming. The audio is processed fullrate, but in a more efficient way.

Besides sampling the pre-envelope at the ADC, the AFE interrupts mayalso be reconfigured to occur once every two or four or more complexsamples instead of once every complex sample. The sample-basedprocessing may be altered to handle more than one complex sample at atime so that the interrupts are even less frequent. This may furtherreduce the overall interrupt overhead.

With half Nyquist-rate sampling, there is a drastic reduction of theinterrupt overhead for an audio scheduler in the speech processingchain. This may occur in both the uplink and the downlink directions,allowing for better scheduling for all interrupt-based tasks (audio aswell as non-audio) which run on the computing cores in typical mobileSOCs. Sample-based and frame-based processing are also optimized, thusgaining a computational advantage. These benefits are a result ofcutting the sampling rate requirement of the ADC in half compared toNyquist rate ADCs. In some cases high-speed ADCs may also be avoided.

In addition, half Nyquist-rate sampling may be used as a power savingtechnique. A system may operate normally with full Nyquist-ratesampling, but when a battery-powered device is on low battery, thesystem may switch to half Nyquist-rate sampling. Better speech qualitymay be generated without compromising on the choice of audio algorithms.Alternatively, half Nyquist-rate sampling may be used at all times, butwhen the battery is low, the system may reduce the low-pass filterfrequency together with the sampling rate thus going below half-Nyquistrate sampling to l/n-Nyquist rate sampling (n>2). By limiting thehighest frequency to be transmitted and then applying a HilbertTransformation to the speech with one-sided sampling, better speechquality can be ensured without limiting the algorithms in the processingchain.

As an example, when the mobile determines that it is running low onbattery, an alert may be generated for the ADCs. Instead of compromisingon the choice of speech processing algorithms to be used, the ADCoperation can be switched over to the efficient sub-Nyquist samplingdescribed herein. The sampling may range from a full reconstruction athalf-Nyquist sampling rate to a partial reconstruction at lower thanhalf-Nyquist sampling rate. In each case better speech quality isprovided than with a conventional ADC at the same sampling rate.

A lower sample rate processing is an extension of the half-rate samplingdescribed herein to cover cases where sufficient processing capabilityor sufficient power is not available. Instead of fully turning off thespeech processing modules or turning off other critical processingmodules in the speech processing chain, the processing requirements maybe scaled back. This may allow a conversation or other use of the deviceto continue longer before the battery is exhausted.

FIG. 1 is a block diagram of an audio pipeline 102. There is an uplink(UL) part 104 of the pipeline and as downlink (DL) part 106 of thepipeline. Such an audio pipeline is typical for a mobile device, such asa smart phone, but may be present in any of a variety of differentwearable, portable and fixed devices that send and receive speech orother audio. A similar pipeline may also be present in audio recordersand video cameras.

In the uplink part 104 of the pipeline, speech data is received at oneor more microphones 112, is digitized at the ADC 114, and is then fedinto the uplink processing path. The uplink processing path hassample-based processing in a block 116, followed by frame-basedprocessing 120. The processed samples are fed to a buffer 118 to beaccumulated until there are enough samples for a frame. The frames arethen processed 120. The processed frames are sent to a speech encoder122 and are then sent to the communication DSP 124 (also referred to asa modem DSP) which processes the frames for transmission over radiochannels. The nature of the transmitter and how it is controlled dependson the particular interface and protocol for the transmission format.

The DL speech data is processed in the DL path and is finally fed intothe loudspeaker 142. The speech data is received from a receiver 130 andthen decoded 132. The frame processing block 134 processes the speechframe from the speech decoder and splits the frame into samples whichare buffered 136 for processing in a sample processing block 138. Thesamples are fed to a DAC 140 to be output by the speaker 142. Thediagram of FIG. 1 is not complete and there may be many other componentsin the UL and DL pipeline such as amplifiers, filters, signalprocessors, and to make up the audio front end (AFE) of a device.

The sample level processing blocks 116, 118 run based on a sample ratewhile the frame level processing blocks 118, 136 run on a frame rate.The frame rate is a fraction of the sample rate because there are manysamples in a frame. FIG. 1 shows a dividing line 150 between blocks thatrun at a sample rate and blocks that run at a frame rate.

An AFE 152 which may be part of a digital, signal processor (DSP),dedicated logic device, the audio device, or a general or specificmicrocontroller generates interrupts to drive the sample-basedprocessing 116, 138. The microcontroller may be a central processor forthe entire system, a part of a SoC, or a dedicated audio controller,depending on the implementation. The AFE 152 sends interrupts at thesample rate (i.e. the rate at which the ADC samples the pre-envelope) tothe sample-based processing modules 116, 138. This may be done in avariety of different ways. In the illustrated embodiment the AFEinterrupts the Audio DSP 160 and feeds the UL sample through the ULprocessing chain. This is represented by the UL switch 154. The actualmechanism for feeding samples to sample-based processing may be adaptedto suit any particular configuration. Similar, the AFE interrupts theAudio DSP 160 to feed DL samples to the DAC and speaker.

The frame-based processing modules 120, 134 may be driven by interruptsfrom the AFE or by the Audio DSP, or in another way. In some embodimentsthe frame-based processing is triggered after the buffer 118 hasaccumulated enough samples to form a frame. This may be done by an alertwithin or coupled to the buffer. The microcontroller may also generateinterrupts to drive all of the other processes for the device, dependingon the particular implementation.

The AFE 152 also configures the sampling rate of the ADC 114 andoptionally the DAC 140. This configuration includes the interval atwhich the ADC will sample the analog signal from the microphone 112. Insome embodiments, the AFE indirectly sets the clock for the ADC. Inother embodiments, the AFE directly sets the clock and in otherembodiments, the AFE sends interrupts at the sample rate to drive theADC. In addition to the parameters for the sampling rate, the AFE mayalso provide other parameters to the ADC and to other components of theUL and DL chains.

For each AFE interrupt, a microphone sample enters the UL chain followedby a sample being fed to the speaker in the DL chain. As mentionedabove, the AFE interrupts may be sent from the AFE at the same rate thatthe ADC samples the audio. For the one-sided pre-envelope samplingdescribed herein, one complex sample (having a real and imaginary part)enters the UL chain followed by two real samples being fed to the DLchain. For each frame interrupt (after a set of AFE interrupts), a frameof samples enters the UL frame-based processing module. After this aframe of samples enters the DL frame-based processing module from thespeech decoder.

The structure of the components of FIG. 1 may take many different forms.The microphones 112 are a transducer to convert analog acoustic wavesthat propagate through the ambient environment and convert these intoanalog electrical signals. The acoustic waves may correspond to speech,music, noise, machinery or other types of audio. The microphones mayinclude the ADC as a single component or the ADC may be a separatecomponent. The ADC 114 samples the analog electrical waveforms togenerate a sequence of samples at a set sampling rate. The sample-basedprocessing 116 may be performed in a DSP (Digital Signal Processor) thatmay or may not include the ADC and DAC. This audio DSP may also includethe frame-based processing 120 or the frame-based processing may beperformed by a different component. The interrupts may be generated byan AFE that is included in an audio DSP or the AFE may be a separatecomponent including a general purpose processor that manages differenttypes of processes in addition to audio pipelines.

The AFE (audio frontend) is formed from hardware logic and may also havesoftware components including a counterpart driver. The driver isinvoked through a command when a voice call or recording is started. Anexample command may be labeled as VB_HW_AFE (Voice band Hardware AFE).Such a command may be used to specify the sampling rate used by the ADC114 and to set up registers for the AFE to use to process the samples.The command may be used to configure the ADC sampling rate or simply toreport it to the sample processing blocks. As mentioned above ADCsampling rates may take any desired values. Currently 8 kHz is used forNarrowband Speech, 16 kHz is used for Wideband Speech and 45 kHz is usedfor audio recording. Higher or lower sampling rates may be used to suitparticular applications.

After the ADC 114 starts sampling the analog signal. The digital samplesare stored in a buffer 116. After a particular number of samples arebuffered, an interrupt is generated by the AFE to the audio DSP to beginthe sample-based processing. An example interrupt may be labeled VB_TX(Voice band Transmit). After the sample-based processing, the processedsamples are stored in a frame buffer 118.

After a particular number of processed samples are accumulated, then thesample-based processing triggers the DSP to begin the frame-basedprocessing tasks 120. The interrupt rate of the AFE may be reduced byreducing the sampling rate of the ADC. Normally, this would reduce thequality of the sampled speech and violate the Nyquist criterion.However, by computing a pre-envelope of the speech, for example bytaking a convolution of the analog real-valued speech signal with animpulse response (time domain filter), the sampling rate may be reducedwith no loss in quality. In one example a Hilbert Transformation isapplied to the speech signal.

Let X(t) be the real-valued speech signal, and X_(H)(t) be the Hilberttransformed signal.

-   The Hilbert transformation may be defined as:

X _(H)(t)=X(t)*(1/πt)   Eq. 1

where * is a convolution operation.

-   The equivalent transformation in the frequency domain is expressed    as:

X _(H)(f)=[−jsgn(f)]X(f)   Eq. 2

where X_(H)(f) and X(f) are corresponding continuous time FourierTransformations of X_(H)(t) and X(t) respectively and j is √−1.

Based on Eq. 2, the pre-envelope X₊(t) of the time domain signal X(t)may be defined as:

X ₊(t)=X(t)+jX _(H)(t)   Eq. 3

The frequency spectrum of X₃₀(t) is actually one-sided compared to thetwo-sided bandwidth of the original speech signal X(t). The frequencyspectrum of all the signals may be plotted as shown in FIGS. 2A, 2B and2C.

FIG. 2A is a representation of X(t) in the frequency domain. FIG. 2B isa representation of the Hilbert transform X_(H)(t) in the frequencydomain and FIG. 2C is a representation of X₊(t) in the frequency domain.While these graphs show the signals in the frequency domain, theprocessing performed before the ADC is in the time domain. FIG. 3indicates each of these signals as being functions of time, notfrequency.

FIG. 2A is a Fourier Transform representation of the original two-sidedfrequency bandwidth of the initial analog speech signal X(t), whereinX(jΩ) represents the frequency amplitude X as a function of thefrequency Ω. In the theoretical representation of the input speech inthe frequency domain, the signal is clearly two-sided where theamplitude A of the frequency spectrum of the speech on the vertical axisis plotted against frequency on the horizontal axis. The maximumamplitude is indicated as “A” at Ω=0.

FIG. 2B shows the Hilbert transformation X_(H)(t) of the input signalX(t) as a function of the frequency spectrum of the signal in whichX_(H)(jΩ) represents the frequency amplitude X_(H) of the Hilberttransformation as a function of the frequency Ω in the frequency domain.

FIG. 2C shows the pre-envelope of the signal obtained by adding thevalues of FIGS. 2A and 2C. The resulting signal has twice the amplitude“2A” at Ω=0 but is one-sided.

The Fourier Transform of X₊(t) may be given by X₊(f) as:

X ₊(f); f≧0   Eq. 4

X ₊(f)=0; f<0   Eq. 5

As a result of equations 4 and 5, by computing the pre-envelope, thereal speech signal is converted into an analytic signal which has onlyone side band. The pre-envelope of the signal can be sampled at half ofthe Nyquist rate of the original signal and still avoid aliasing.

Using this pre-envelope, the sampling rate requirement for the realvalued signal is half that of the original signal. If the bandwidth ofthe real-valued speech signal is W, then its Nyquist sampling rate is 2W. The corresponding minimum sampling rate without any aliasing for itspre-envelope is W.

In some embodiments, the pre-envelope signal is processed throughout thespeech processing chain instead of the original signal. As the interruptrate of the AFE comes down by a factor of 2, the interrupt overheadcomes down by a factor of 2. The time interval between successiveinterrupts is then doubled, allowing more leeway for the tasks of theaudio subsystem. Along with this, it is possible for much betterscheduling of other tasks (both audio as well as non-audio, generalpurpose tasks) from the overall system viewpoint.

FIG. 3 is a block diagram of an uplink ADC 114 for performing theexample pre-envelope processing described above. The speech or otheraudio is received at a microphone 112, passed through the ADC 114, andforwarded to the sample processing 116 as in FIG. 1. The incoming analogelectrical audio signal, such as a speech signal, from the microphone isapplied to a low pass filter 304. The cutoff frequency F₀ for the filtermay be adapted to suit any desired application. For Narrowband Speechthe cutoff frequency is 4 kHz. The filtered audio corresponds to theinput speech signal X(t) discussed above and represented in FIG. 2A.

A Hilbert transformation is applied at a block 306 to produce the signalX_(H)(t) represented in FIG. 2B. This signal may be rotated 90° or π/2at 308 and then combined in a combiner 310 with the original speechsignal. The result of these operations is the pre-envelope signal X₊(t)represented in FIG. 2C. The pre-envelope signal may then be digitized inan ADC 312 at the same sampling rate e.g. 4 kHz as the cutoff frequencyF₀. The digital signal is then applied to the sample-based processes ina processing block 116.

Each complex sample of the pre-envelope passes through the sample-basedprocessing chain at each AFE interrupt. The sample-based processingchain can be optimized to work on one complex sample at a time, insteadof one real sample. As described above, a complex sample corresponds totwo real samples. The loops inside the sample-based processing can betailored to handle one complex sample instead of one real sampleresulting in an optimized and computationally efficient implementation.

By processing one complex sample and two real samples at a time in boththe uplink and the downlink directions respectively, the interruptoverhead is reduced in the context of an audio scheduler. This allowsfor better scheduling in the whole system. A more efficient audiopipeline, including the sample-based and frame-based processing can berealized.

In the downlink direction, the sample-based processing 138 of thedownlink chain 106 may be modified to work on two real samples at a timeand feed out two real samples to the speaker for each AFE interrupt. Inthe frame-based processing 120, 134 parts of the chains 104, 106, nosignificant new techniques are required. For Acoustic Echo Cancellation(AEC), for example, the pre-envelope of the reference line may be fed toAEC processing without any changes to the AEC processing. Similarly,with spectral-domain techniques like TNR (Traffic Noise Reduction), WNR(Wind Noise Reduction), NR (Noise Reduction), SER (Spectral EchoReduction) etc., the sizes of the FFT may be reduced by a factor of 2,providing a computational gain. The efficient implementation ofsample-based and frame-based processing can be effortlessly adapted toparallel architectures.

It can be shown that the digital signal generated as shown in FIG. 3contains all of the information from the original real-valued timedomain speech or audio signal. One example of how this can be shown isto reconstruct the original signal from the digital samples. This isdescribed in the context of FIGS. 4A and 4B. Before the speech encoder122 in the UL, the original real signal from the pre-envelope can bereconstructed by taking advantage of the symmetry of the FourierTransform of a real signal. Defining X₊(n) to be the complex samples ofthe pre-envelope, the DTFT (Discrete-Time Fourier Transform) of, X₊(n)and X(n) may be represented as shown in FIG. 4A. In FIG. 4A, thevertical axis corresponds to the amplitude of the transform X₊(e^(jω))plotted against discrete-frequency ω on the horizontal axis. The signalhas a cycle period of 2/π, and a maximum amplitude of “2B.”

This sample sequence may be processed by inserting as “0” between every2 samples of X₊(n). The spectrum from [π, 2π] portion may then bemanipulated to represent the complex conjugate of [0, π]. By thisprocess, the original spectrum is reconstructed. After taking the IFFT(Inverse Fast Fourier Transform) the time-domain signal may bereconstructed as shown in FIG. 4B. In FIG. 4B, the amplitude of themanipulated spectrum X(e^(jω)) is represented on the same frequencydomain with half the maximum amplitude “B.” As shown and in contrast tothe one-sided signal bandwidth of FIG. 4A, FIG. 4B shows a two-sidedsignal bandwidth with half the amplitude.

The techniques described above may be extended to provide for low ratesampling not just of one half of a normal sampling rate but of manydifferent sampling rates. The techniques described herein may be used tosupport any of a variety of different sampling rates and the samplingrate may be changed to adapt to different operating circumstances.

For the minimum possible sampling rate, the cutoff frequency F₀ of theLPF 304 may be modified to suit operating circumstances as well.Lowering the LPF cutoff frequency allows for a lower sampling rate whichreduces the demand on system resources. These resources may be used forother tasks or total power consumption may be reduced.

Variable sampling rates may be used to reduce overall power consumptionbased on system demand. A system may generate an alert when batterypower is low. The alert from a power management system, for example, maybe used to trigger a lower sampling rate at the AFE. This technique maybe used during low-battery situations to provide for better powermanagement with only a small compromise on the speech quality.

At times of low battery power, the cutoff frequency of the LPF may bereduced e.g. from Wideband to Narrowband Speech or from Narrowband tosome lower level such as 3 kHz or 2 kHz. This may be done instead of, orin addition to, turning off some of the processes in the sample/frameprocessing part of the audio pipeline. By choosing a lower cutofffrequency and then processing the pre-envelope rather than the originalsignal at a lower sampling rate, power consumption can be reduced.

In a typical system, a lower sampling rate reduces power consumption. Asa result, other processes in the pipeline may be maintained while stillconserving power resources. As a result, use of the Hilbert Transform toprocess a pre-envelope of the audio may be used to support a variablecutoff frequency. This results in better speech quality during lowbattery times. As an example, the sampling rate may be reduced in orderto allow other processing to continue at maximum or high levels. Thisextends the battery life with a small cost in speech quality. In anotherexample with still less available power, instead of simply shuttingdown, the system may be able to operate in a lower power, lower samplingrate mode without any of the sample processing being performed. Theremay be multiple tiers so that as power is further exhausted, the cutofffrequency and the sampling rate can be reduced in stages or steps untilthe speech quality reaches a level that is no longer useable orsatisfying. The system may then shut down or go to standby mode.

FIG. 5 is a process flow diagram for sampling audio at a lower rate asdescribed above. At 502, an audio signal such as speech is received.This signal is a real-valued analog electrical signal. At 504, aconvolution operation is performed on the audio signal. The convolutionoperation may be a Hilbert transformation or a similar type oftransformation. The convolution may include computing a pre-envelope forthe audio signal in which the Hilbert transformation is rotated and thencombined with the original time domain signal. The pre-envelope issampled at 506. The parameters for the sampling including the samplingrate may be received from an AFE or another component. At 508 aninterrupt is received from another component, for example an AFE by asample processor to process the audio sample. At 510 the Audio DSP orsimilar component processes the audio signal in response to theinterrupt. At 512, the samples are collected to build a frame and at 514the frame is transmitted to a remote device, such as a portablecommunications terminal or a memory. There may be various processingoperations performed on the frame before the frame is sent, depending onthe particular implementation.

FIG. 6 is a process flow diagram of power management for a portabledevice with an audio pipeline. The system such as that of FIGS. 3 and 5is operating normally so that it receives an audio signal at 602. Theaudio signal is low pass filtered at a cutoff frequency F₀ at 604. Aconvolution operation such as a Hilbert transform followed by apre-envelope calculation is performed on the audio signal at 606. TheADC samples the audio signal at a particular sampling rate at 608. Thesampling rate is related to the low pass filter cutoff frequency and isnormally the same frequency as described above. However, it could be ahigher or lower frequency, depending on the particular implementation.At 610, the audio sample is processed at a rate that corresponds to theparticular sampling rate. This sample-based processing is performed inresponse to an interrupt.

At 612 a low power state alert is received from the power managementsystem. This alert may take a variety of different forms and may bereceived at the microcontroller for the system or for the AFE or it maybe received at the AFE. The alert may be in response to a low battery, areduced available power, other processes that demand processingresources, or any other condition of the device. In response to thisalert, a cutoff frequency is selected at 614 and the sampling rate ismodified at 616.

Following these changes, the low pass filter filters the audio signal atthe selected cutoff frequency at 618. At 620 the convolution operationis performed on the signal with the lower frequency cutoff. The ADCsamples the audio signal at the modified rate at 622. At 624, the audiosample is processed in response to an interrupt. The interrupts areprovided at a lower rate based on the lower sampling rate. The processedsamples are collected at 626 to form a frame and the frame istransmitted to a remote device at 628.

FIG. 7 illustrates a computing device 100 in accordance with oneimplementation. The computing device 100 houses a system board 2. Thehoard 2 may include a number of components, including but not limited toa processor 4 and at least one communication package 6. Thecommunication package is coupled to one or more antennas 16. Theprocessor 4 is physically and electrically coupled to the board 2.

Depending on its applications, computing device 100 may include othercomponents that may or may not be physically arid electrically coupledto the board 2. These other components include, but are not limited to,volatile memory (e.g., DRAM) 8, non-volatile memory (e.g., ROM) 9, flashmemory (not shown), a graphics processor 12, a digital signal processor(not shown), a crypto processor (riot shown), a chipset 14, an antenna16, a display 18 such as a touchscreen display, a touchscreen controller20, a battery 22, an audio codec (not shown), a video codec (not shown),a power amplifier 24, a global positioning system (GPS) device 26, acompass 28, an accelerometer (not shown), a gyroscope (not shown), aspeaker 30, a camera 32, a microphone array 34, and a mass storagedevice such as hard disk drive) 10, compact disk (CD) (not shown),digital versatile disk (DVD) (riot shown), and so forth). Thesecomponents may be connected to the system board 2, mounted to the systemboard, or combined with any of the other components.

The communication package 6 enables wireless and/or wired communicationsfor the transfer of data to and from the computing device 100. The term“wireless” and its derivatives may be used to describe circuits,devices, systems, methods, techniques, communications channels, etc.,that may communicate data through the use of modulated electromagneticradiation through a non-solid medium. The term does not imply that theassociated devices do not contain any wires, although in someembodiments they might not. The communication package 6 may implementany of a number of wireless or wired standards or protocols, includingbut not limited to Wi-Fi (IEEE 802.11 family), WiMAX (IEEE 802.16family), IEEE 802.20, long term evolution (LTE), Ev-DO, HSPA+, HSDPA+,HSUPA+, EDGE, GSM, GPRS, CDMA, TDMA, DECT, Bluetooth. Ethernetderivatives thereof, as well as any other wireless and wired protocolsthat are designated as 3G, 4G, 5G, and beyond. The computing device 100may include a plurality of communication packages 6. For instance, afirst communication package 6 may be dedicated to shorter range wirelesscommunications such as Wi-Fi and Bluetooth and a second communicationpackage 6 may be dedicated to longer range wireless communications suchas GPS, EDGE, GPRS, CDMA, WiMAX, LTE, Ev-DO, and others.

The microphones 34 and the speaker 30 are coupled to one or more audiochips 36 to perform digital conversion, encoding and decoding, andsample-based processing as described herein. The processor 4 is coupledto the audio chip, through an audio front end, for example, to drive theprocess with interrupts, set parameters, and control operations of theaudio chip. Frame-based processing may be performed in the audio chip orhi the communication package 6. Power management functions may beperformed by the processor, coupled to the battery 22 or a separatepower management chip may be used.

In various implementations, the computing device 100 may be a laptop, anetbook, a notebook, an ultrabook, as smartphone, a wearable device, atablet, a personal digital assistant (PDA), an ultra mobile PC, a mobilephone, a desktop computer, a server, a printer, a scanner, a monitor, aset-top box, an entertainment control unit, a digital camera, a portablemusic player, or a digital video recorder. The computing device may befixed, portable, or wearable. In further implementations, the computingdevice 100 may be any other electronic device that processes data.

Embodiments may be implemented as a part of one or more memory chips,controllers, CPUs (Central Processing Unit), microchips or integratedcircuits interconnected using a motherboard, an application specificintegrated circuit (ASIC), and/or a field programmable gate array(FPGA).

References to “one embodiment”, “an embodiment”, “example embodiment”,“various embodiments”, etc., indicate that the embodiment(s) sodescribed may include particular features, structures, orcharacteristics, but not every embodiment necessarily includes theparticular features, structures, or characteristics. Further, someembodiments may have some, all, or none of the features described forother embodiments.

In the following description and claims, the term “coupled” along withits derivatives, may be used. “Coupled” is used to indicate that two ormore elements co-operate or interact with each other, but they may ormay not have intervening physical or electrical components between them.

As used in the claims, unless otherwise specified, the use of theordinal adjectives “first”, “second”, “third”, etc., to describe acommon element, merely indicate that different instances of likeelements are being referred to, and are not intended to imply that theelements so described must be in a given sequence, either temporally,spatially, in ranking, or in any other manner.

The drawings and the forgoing description give examples of embodiments.Those skilled in the art will appreciate that one or more of thedescribed elements may well be combined into a single functionalelement. Alternatively, certain elements may be split into multiplefunctional elements. Elements from one embodiment may be added toanother embodiment. For example, orders of processes described hereinmay be changed and are not limited to the manner described herein.Moreover, the actions of any flow diagram need not be implemented in theorder shown; nor do all of the acts necessarily need to be performed.Also, those acts that are not dependent on other acts may be performedin parallel with the other acts. The scope of embodiments is by no meanslimited by these specific examples. Numerous variations, whetherexplicitly given in the specification or not, such as differences instructure, dimension, and use of material, are possible. The scope ofembodiments is at least as broad as given by the following claims.

The following examples pertain to further embodiments. The variousfeatures of the different embodiments may be variously combined withsome features included and others excluded to suit a variety ofdifferent applications. Some embodiments pertain to a method thatincludes receiving an audio signal, performing a convolution operationon the audio signal, sampling the convoluted audio signal, receiving aninterrupt to process a sample of the audio signal, processing a samplein response to the interrupt, collecting the samples to form a frame,and transmitting the frame to a remote device.

In further embodiments, the convolution operation is a Hilberttransformation.

Further embodiments include computing a pre-envelope of the audio signalafter performing a convolution and before sampling.

In further embodiments, computing a pre-envelope comprises combining arotated Hilbert transformation of the audio signal with the audiosignal.

In further embodiments, the pre-envelope is a complex value with onlyone side lobe in the frequency domain.

Further embodiments include applying a low pass filter to the audiosignal before performing the convolution operation.

In further embodiments, the audio signal is a real-valued signal andwherein sampling comprises sampling a complex-valued result of theconvolution operation.

Further embodiments include receiving a low power state alert andmodifying the sampling rate to reduce power consumption, whereinsampling the audio signal comprises sampling the audio signal at themodified sampling rate.

Further embodiments include applying as low pass filter to the receivedaudio signal, the low pass filter having a cutoff frequency selected inresponse to the low power state alert, and the modified sampling ratebeing no higher than the cutoff frequency.

In further embodiments the low pass filter has a cut off frequency andwherein sampling the audio signal comprises sampling at a rate that islower than the cut off frequency in further embodiments, sampling theaudio signal comprises sampling at a sampling rate that is below theNyquist sampling rate of the audio signal.

Some embodiments pertain to an audio processor that includes a low passfilter having a cutoff frequency to filter received audio, a Hilberttransformer to apply a Hilbert transformation to the filtered audio, acombiner to combine the Hilbert transformation with the filtered audioto form a combined audio signal, and an analog to digital converter tosample the combined audio signal.

In further embodiments, the analog to digital converter samples thecombined audio at a rate that is not higher than the cutoff frequency.

Further embodiments include a buffer to receive the samples and bufferthe samples for sample-based audio processing. Further embodimentsinclude an audio front end to configure a sampling rate of the analog todigital converter. Further embodiments include a signal rotator torotate the Hilbert transformation before combining.

Further embodiments include a packetizer to collect samples and convertthem to packets for transmission to an external source.

Some embodiments pertain to a portable audio device that includes abattery to power the device, a downlink pipeline having a digital toanalog converter to receive audio data from an external source and toconvert the speech data to analog electrical audio, an amplifier toamplify the downlink audio, and a speaker to convert the downlink audioto sound waves, an uplink pipeline having a microphone to receive soundwaves from a user of the device, an amplifier to amplify the receivedsound waves as an analog electrical signal, and an analog to digitalconverter to convert the analog electrical audio to uplink audio datafor transmission to the external source, and a transceiver to send andreceive frames through a wireless communications link to the externalsource, wherein the analog to digital converter comprises a low passfilter having a cutoff frequency, a convolution operator to convolve theanalog electrical signal and wherein the analog to digital convertersamples the convolved signal at a sampling rate no higher than thecutoff frequency.

Further embodiments include an audio processor to process the uplinkaudio samples, in response to interrupts, and a processor to generatethe interrupts to the audio processor.

Further embodiments include a packetizer to collect samples and convertthem to packets for transmission to the external source.

1.-11. (canceled)
 12. An audio processor comprising: a low pass filterhaving a cutoff frequency to filter received audio; a Hilberttransformer to apply a Hilbert transformation to the filtered audio; acombiner to combine the Hilbert transformation with the filtered audioto form a combined audio signal; and an analog to digital converter tosample the combined audio signal.
 13. The audio processor of claim 12,wherein the analog to digital converter samples the combined audio at arate that is not higher than the cutoff frequency.
 14. The audioprocessor of claim 12, further comprising a buffer to receive thesamples and buffer the samples for sample-based audio processing. 15.The audio processor of claim 12, further comprising an audio front endto configure the sampling rate of the analog to digital converter. 16.The audio processor of claim 12, further comprising a signal rotator torotate the Hilbert transformation before combining.
 17. The audioprocessor of claim 12, further comprising a packetizer to collectsamples arid convert them to packets for transmission to an externalsource. 18.-20. (canceled)